home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / sml_nj / 93src.lha / src / rs6000 / rs6000glue.sml < prev    next >
Encoding:
Text File  |  1993-01-27  |  1.2 KB  |  44 lines

  1. (** IBM RS6000 glue **)
  2. structure RS6000Assembler : ASSEMBLER = 
  3.   struct
  4.  
  5.     structure RS6000Coder = Coder (structure M=RS6000Depend 
  6.                          and E=RS6000AssemblyEmitter)
  7.     
  8.     structure CMachineAssembler = RS6000CM (structure C=RS6000Coder)
  9.  
  10.     structure MLAssembler = CPScomp(CMachineAssembler)
  11.  
  12.     fun generate(lexp,stream) =    (RS6000AsmStream.asmStream := stream;
  13.                  MLAssembler.compile lexp;
  14.                  RS6000Coder.finish())
  15.   end
  16.  
  17. structure RS6000CodeGen : CODEGENERATOR = 
  18.   struct
  19.  
  20.     structure RS6000Coder = Coder (structure M=RS6000Depend
  21.                          and E=RS6000MCodeEmitter)
  22.     structure CMachineCoder = RS6000CM (structure C=RS6000Coder)
  23.  
  24.     structure RS6000CodeGenerator = CPScomp (CMachineCoder)
  25.     fun generate lexp = (RS6000CodeGenerator.compile lexp;
  26.              RS6000Coder.finish();
  27.              KeepRS6000MCode.getCodeString())
  28.   end
  29.  
  30.  
  31. structure CompRS6000 = Batch (structure M=RS6000CodeGen
  32.                         and A=RS6000Assembler)
  33.  
  34. structure IntRS6000  = IntShare (structure Machm   = RS6000CodeGen
  35.                   functor Debugger  = BogusDebugger
  36.                      val fileExtension = ".rs6000")
  37.  
  38. structure IntRS6000D = IntShare (structure Machm   = RS6000CodeGen
  39.                   functor Debugger  = RealDebugger
  40.                  val fileExtension = ".rs6000")
  41.  
  42.  
  43.  
  44.